<HTML> 
<HEAD> 
	<TITLE>3rd Party ROBOTC Drivers</TITLE> 
<link href="tabs.css" rel="stylesheet" type="text/css"/> 
<link href="doxygen.css" rel="stylesheet" type="text/css"/> 
</HEAD> 
 
<BODY bgcolor="#ffffff" link="#000000" vlink="#000000"> 
<table width="100%" bgcolor="navy" cellspacing=0 cellpadding=1 border=0> 
<tr><td><table width="100%" bgcolor="#EEEEDD" cellspacing=0 cellpadding=3 border=0> 
<tr> 
    <td width="33%" align="left"> <img src="images/LOGO_NXT.gif" width=266 height=44 border="0" alt="Mindstorms"></td> 
    <td><b><font size="+3" color="navy">3rd Party ROBOTC Drivers</font></b></td> 
    <td align="right"> <img src="images/logo.png" width=44 height=44 border="0" alt="RobotC"></td>     
</tr> 
  <tr bgcolor="#cccc99" align="right"> 
          <td colspan=3> <font face="arial" size="-1"> [<a href=main.html>Home</a>] [<a target=_top href="https://sourceforge.net/projects/rdpartyrobotcdr/">Download</a>] [<a target=_top href="http://apps.sourceforge.net/mantisbt/rdpartyrobotcdr/my_view_page.php">Submit a bug/suggestion</a>]  [<a target=_top href="http://www.robotc.net/forums/">ROBOTC Forums</a>] [<a target=_top href="http://botbench.com">Blog</a>] [<a target=_top href="http://sourceforge.net/donate/index.php?group_id=257238">Support this project</a>]</font> </td> 
</tr> 
</table></td></tr> 
</table> 
<!-- Generated by Doxygen 1.7.2 -->
<div class="header">
  <div class="summary">
<a href="#files">Files</a> &#124;
<a href="#define-members">Defines</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<h1>LineLeader Sensor<br/>
<small>
[<a class="el" href="group__mindsensors.html">Mindsensors</a>]</small>
</h1>  </div>
</div>
<div class="contents">
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="files"></a>
Files</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mindsensors-lightsensorarray_8h.html">mindsensors-lightsensorarray.h</a></td></tr>

<p><tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><p>Mindsensors LigthSensorArray. </p>
<br/></td></tr>
</p>
<tr><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mindsensors-lineleader_8h.html">mindsensors-lineleader.h</a></td></tr>

<p><tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><p>Mindsensors Line Tracking Sensor. </p>
<br/></td></tr>
</p>
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gae89663deaddbf9546dbea7ef507b7596">MSLSA_I2C_ADDR</a>&#160;&#160;&#160;0x14</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gae6edf1014992937d32f100c54d2efde8">MSLSA_CMD_REG</a>&#160;&#160;&#160;0x41</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga83235f6d385e2ccba03c2ec87b1b5f97">MSLSA_CALIBRATED</a>&#160;&#160;&#160;0x42</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga8e1d100f324fefa865dbdf602dc0569a">MSLSA_WHITE_LIMIT</a>&#160;&#160;&#160;0x4A</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga852ee6c7439f830957e9b9d00ad02db7">MSLSA_BLACK</a>&#160;&#160;&#160;LIMIT   	  0x52</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga4ae89e697102fda39ba5c5dc6e1cd04d">MSLSA_WHITE_CALIB_DATA</a>&#160;&#160;&#160;0x5A</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga568a03564d4b1fc7c709a9f6a4c655cf">MSLSA_BLACK_CALIB_DATA</a>&#160;&#160;&#160;0x62</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaeb334b8818af2627dd1400663d52b192">MSLSA_UNCALIBRATED</a>&#160;&#160;&#160;0x6A</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga39122440e3d8f04b98352ff4437623c7">MSLSA_CMD_FREQ_US</a>&#160;&#160;&#160;'A'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga5d43d7634b0a23cb5c6d705001f17e4d">MSLSA_CMD_CALIB_BLACK</a>&#160;&#160;&#160;'B'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaa293d37cfd093980cf4c9c0ecaff6ae2">MSLSA_CMD_POWERDOWN</a>&#160;&#160;&#160;'D'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaac707184dab7c79b952e8c20ae649ad8">MSLSA_CMD_FREQ_EU</a>&#160;&#160;&#160;'E'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaf84b904de69a57e13449cd88d70e7640">MSLSA_CMD_POWERUP</a>&#160;&#160;&#160;'P'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaf13db40153f7aa1ebf0816153c76173f">MSLSA_CMD_FREQ_UNI</a>&#160;&#160;&#160;'U'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga9dc597c7a0c15b1b92d83213602e2b85">MSLDA_CMD_CALIB_WHITE</a>&#160;&#160;&#160;'W'</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga25d6edcc3425de2ee9abe86186a43a98">MSLSAwakeUp</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_POWERUP)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga74088d3b3aa6be1ca0e2ee5b1d6d0157">MSLSASleep</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_POWERDOWN)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga7f53b8297f06d90b80945e5c1e4d7ccc">MSLSAcalWhite</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLDA_CMD_CALIB_WHITE)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga27106d483a908de1a126fee132a52566">MSLSAcalBlack</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_CALIB_BLACK)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga00ff9edf1856da054967323bf56d0610">MSLSAsetEU</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_EU)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga7f235e66c11db9a4157af510ca67d0ad">MSLSAsetUS</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_US)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga6bd6d0e08d1209ff3ae55509c6813516">MSLSAsetUni</a>(X)&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_UNI)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gacf9f00f667e856b91dd8c12fbfed42a4">LL_I2C_ADDR</a>&#160;&#160;&#160;0x02</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga746196c5de3e53dc5725aab5371eb93e">LL_CMD_REG</a>&#160;&#160;&#160;0x41</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga71b745ac640e505f3d1b16c9676d80b7">LL_SETPOINT</a>&#160;&#160;&#160;0x45</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gacc1f77e986571b86ba33032b50cb455f">LL_KP_VALUE</a>&#160;&#160;&#160;0x46</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga828d2ade2893ef6fe4d3da8dcb5085c7">LL_KI_VALUE</a>&#160;&#160;&#160;0X47</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaa6ab601259447a08cb199b0c93c4f398">LL_KD_VALUE</a>&#160;&#160;&#160;0X48</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gada9c6b1576eca1d325b85c40cc7855af">LL_KP_FACTOR</a>&#160;&#160;&#160;0x61</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga1b438aeb7ddc87573bfd9c24ca42458a">LL_KI_FACTOR</a>&#160;&#160;&#160;0X62</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga92eb450c20cd134bc90ff6ff2f6347a1">LL_KD_FACTOR</a>&#160;&#160;&#160;0X63</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga85a98047cb31c3c285f3a6d3f4db060a">LL_READ_STEERING</a>&#160;&#160;&#160;0x42</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga1638f7ba693960a75abf313a7344a9ee">LL_READ_AVERAGE</a>&#160;&#160;&#160;0X43</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga12ad5be14508319b2bfc8290b41ad886">LL_READ_RESULT</a>&#160;&#160;&#160;0X44</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga5638e005055b1df5e595734a42c4b179">LL_SENSOR_RAW</a>&#160;&#160;&#160;0X49</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga253d9d0e7d4ea08b11dc777088490bc1">LL_WHITE_LIMIT</a>&#160;&#160;&#160;0X51</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga746144b962d3a52cbf7d507c6be2d4c2">LL_BLACK_LIMIT</a>&#160;&#160;&#160;0X59</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gad0456ad794e3fa5deb85f288315c4d49">LL_SENSOR_UNCAL</a>&#160;&#160;&#160;0x74</td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga23eeee592371dc2285d86e86e98dfb91">MSLSAreadSensors</a> (tSensors link, ubyte *values)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga18b78973f36c39c3d98200941c9bbe51">MSLSAreadRawSensors</a> (tSensors link, int *values)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaf61714035d97be3f89bcce8f8c96e1ab">_MSLSAsendCommand</a> (tSensors link, ubyte cmd)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga1db790809590cad8e206870a3e814bbc">LLinit</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga3b5fbe1abe3eb0889c9fb30ff7d7c01b">LLwakeUp</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga2bbf71694ef338dab472618a6442c429">LLsleep</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gad94d0f9fc1c628d9e1a8fe598d64302b">LLinvertLineColor</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaefd78fa2909cf1b98961ebf3e845e7b1">LLresetLineColor</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga71dbb04b90ec6f5c90c34b5db4c638d5">LLtakeSnapshot</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga780835bc9c4f659670ac26a992896ac7">LLcalWhite</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga9441ee5facb3b5a93d35fd47624b996c">LLcalBlack</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga48b8ab2daaa7afede45d1501933824f0">LLsetPoint</a> (tSensors link, ubyte data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga8b142f1b378d3cecbdd5e4b5a2a7d788">LLsetPoint</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga023144b86129e6828fa94b757016065f">LLsetKp</a> (tSensors link, ubyte data, ubyte factor)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gaee40b167cd0fcb978895964cbf1d478b">LLreadKp</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga49001b6744c482e856fde7283e711e75">LLreadKpFactor</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga9ca02184d0ee468b2fdd7e537654d7d3">LLsetKi</a> (tSensors link, ubyte data, ubyte factor)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gac090fcc45f5a6c53c94a31d82b61924e">LLreadKi</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga49d4b5bed7383b1ca1d3b45860dec496">LLreadKiFactor</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga5e59a3463a3e8b2665e6b3555da8f93d">LLsetKd</a> (tSensors link, ubyte data, ubyte factor)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga2d9d9c3cfd5dd9be7bb4f9e57408fbd7">LLreadKd</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga8d6b35d47284e3ee40b68a490ad71ced">LLreadKdFactor</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga5c46604095f77a86983b7aeaf22200dc">LLreadSteering</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga9a35e15add220ed326ca7520ffe65e6c">LLreadAverage</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga7dd78212c25b63c0349b8f4c61e11e1b">LLreadResult</a> (tSensors link)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga60491a411576c00b70909e1f295919db">LLreadSensorRaw</a> (tSensors link, <a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;pMsg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga9c243c81526226b5666b5d14a5fc8e59">LLreadSensorUncalibrated</a> (tSensors link, <a class="el" href="group__common.html#ga79eb917b5a56f0d0e7cf94886c6ac25c">tIntArray</a> &amp;sensorValues)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga1aaffb6d171becb4d2cb516077417691">LLreadWhiteThresh</a> (tSensors link, <a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;pMsg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gafe57238ecefde4bc4992c0ff8c77a896">LLreadBlackThresh</a> (tSensors link, <a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;pMsg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga2d006a5dfeb2fe7485f2175b5832b70c">_lineLeader_cmd</a> (tSensors link, ubyte cmd)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga78825ff1e7aa83f16529ae1461160da5">_lineLeader_write</a> (tSensors link, ubyte regToWrite, ubyte data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga516ab302bdda4f6159a2ef5ffd6b2f8d">_lineLeader_read</a> (tSensors link, ubyte regToRead, ubyte &amp;retval)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#gac5d314850c7f4192dd2e7c2307f96f6b">_lineLeader_read</a> (tSensors link, ubyte regToRead, int numBytes, <a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;pDataMsg)</td></tr>
<tr><td colspan="2"><h2><a name="var-members"></a>
Variables</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga8867a116b6793a996bbc787d1c6003fd">MSLSA_I2CRequest</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga109536bf6e085ae6e7980771e3054526">MSLSA_I2CReply</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga8dd01df4fc54bdb09a4d0324e0a52b14">LL_I2CRequest</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga2be29d118be70da80c5b5b0ddeaad572">LL_I2CReply</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ubyte&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__msll.html#ga212a936c0d0cc14338cd1152384c4885">oneByte</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>LineLeader Sensor </p>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="ga746144b962d3a52cbf7d507c6be2d4c2"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_BLACK_LIMIT" ref="ga746144b962d3a52cbf7d507c6be2d4c2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_BLACK_LIMIT&#160;&#160;&#160;0X59</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>ubyte array (8) with raw value of black calibration for each sensor </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00069">69</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga746196c5de3e53dc5725aab5371eb93e"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_CMD_REG" ref="ga746196c5de3e53dc5725aab5371eb93e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_CMD_REG&#160;&#160;&#160;0x41</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Register used for issuing commands </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00054">54</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gacf9f00f667e856b91dd8c12fbfed42a4"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_I2C_ADDR" ref="gacf9f00f667e856b91dd8c12fbfed42a4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_I2C_ADDR&#160;&#160;&#160;0x02</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>I2C address used by the LL </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00053">53</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga92eb450c20cd134bc90ff6ff2f6347a1"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KD_FACTOR" ref="ga92eb450c20cd134bc90ff6ff2f6347a1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KD_FACTOR&#160;&#160;&#160;0X63</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>D factor for D value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00062">62</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaa6ab601259447a08cb199b0c93c4f398"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KD_VALUE" ref="gaa6ab601259447a08cb199b0c93c4f398" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KD_VALUE&#160;&#160;&#160;0X48</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>D value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00059">59</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga1b438aeb7ddc87573bfd9c24ca42458a"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KI_FACTOR" ref="ga1b438aeb7ddc87573bfd9c24ca42458a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KI_FACTOR&#160;&#160;&#160;0X62</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>I factor for I value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00061">61</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga828d2ade2893ef6fe4d3da8dcb5085c7"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KI_VALUE" ref="ga828d2ade2893ef6fe4d3da8dcb5085c7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KI_VALUE&#160;&#160;&#160;0X47</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>I value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00058">58</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gada9c6b1576eca1d325b85c40cc7855af"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KP_FACTOR" ref="gada9c6b1576eca1d325b85c40cc7855af" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KP_FACTOR&#160;&#160;&#160;0x61</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>P factor for P value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00060">60</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gacc1f77e986571b86ba33032b50cb455f"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_KP_VALUE" ref="gacc1f77e986571b86ba33032b50cb455f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_KP_VALUE&#160;&#160;&#160;0x46</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>P value of PID control </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00057">57</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga1638f7ba693960a75abf313a7344a9ee"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_READ_AVERAGE" ref="ga1638f7ba693960a75abf313a7344a9ee" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_READ_AVERAGE&#160;&#160;&#160;0X43</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>weighted average value for all sensors in array </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00065">65</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga12ad5be14508319b2bfc8290b41ad886"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_READ_RESULT" ref="ga12ad5be14508319b2bfc8290b41ad886" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_READ_RESULT&#160;&#160;&#160;0X44</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>1 or 0 for line or no line for all 8 sensors </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00066">66</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga85a98047cb31c3c285f3a6d3f4db060a"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_READ_STEERING" ref="ga85a98047cb31c3c285f3a6d3f4db060a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_READ_STEERING&#160;&#160;&#160;0x42</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>steering value for simple mode line following </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00064">64</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga5638e005055b1df5e595734a42c4b179"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_SENSOR_RAW" ref="ga5638e005055b1df5e595734a42c4b179" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_SENSOR_RAW&#160;&#160;&#160;0X49</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>ubyte array (8) with raw value for each sensor </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00067">67</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gad0456ad794e3fa5deb85f288315c4d49"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_SENSOR_UNCAL" ref="gad0456ad794e3fa5deb85f288315c4d49" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_SENSOR_UNCAL&#160;&#160;&#160;0x74</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>ubyte array (16) with uncalibrated sensor data </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00070">70</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga71b745ac640e505f3d1b16c9676d80b7"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_SETPOINT" ref="ga71b745ac640e505f3d1b16c9676d80b7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_SETPOINT&#160;&#160;&#160;0x45</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>average value considered center of line (def=45) </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00056">56</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga253d9d0e7d4ea08b11dc777088490bc1"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_WHITE_LIMIT" ref="ga253d9d0e7d4ea08b11dc777088490bc1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LL_WHITE_LIMIT&#160;&#160;&#160;0X51</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>ubyte array (8) with raw value of white calibration for each sensor </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00068">68</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga9dc597c7a0c15b1b92d83213602e2b85"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLDA_CMD_CALIB_WHITE" ref="ga9dc597c7a0c15b1b92d83213602e2b85" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLDA_CMD_CALIB_WHITE&#160;&#160;&#160;'W'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate white values </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00056">56</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga852ee6c7439f830957e9b9d00ad02db7"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_BLACK" ref="ga852ee6c7439f830957e9b9d00ad02db7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_BLACK&#160;&#160;&#160;LIMIT   	  0x52</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Black Reading Limit </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00045">45</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga568a03564d4b1fc7c709a9f6a4c655cf"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_BLACK_CALIB_DATA" ref="ga568a03564d4b1fc7c709a9f6a4c655cf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_BLACK_CALIB_DATA&#160;&#160;&#160;0x62</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Black Calibration data </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00047">47</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga83235f6d385e2ccba03c2ec87b1b5f97"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CALIBRATED" ref="ga83235f6d385e2ccba03c2ec87b1b5f97" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CALIBRATED&#160;&#160;&#160;0x42</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrated Sensor reading </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00043">43</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga5d43d7634b0a23cb5c6d705001f17e4d"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_CALIB_BLACK" ref="ga5d43d7634b0a23cb5c6d705001f17e4d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_CALIB_BLACK&#160;&#160;&#160;'B'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate black values </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00051">51</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaac707184dab7c79b952e8c20ae649ad8"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_FREQ_EU" ref="gaac707184dab7c79b952e8c20ae649ad8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_FREQ_EU&#160;&#160;&#160;'E'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>European frequency compensation </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00053">53</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaf13db40153f7aa1ebf0816153c76173f"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_FREQ_UNI" ref="gaf13db40153f7aa1ebf0816153c76173f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_FREQ_UNI&#160;&#160;&#160;'U'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Universal frequency compensation (default) </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00055">55</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga39122440e3d8f04b98352ff4437623c7"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_FREQ_US" ref="ga39122440e3d8f04b98352ff4437623c7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_FREQ_US&#160;&#160;&#160;'A'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>American frequency compensation </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00050">50</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaa293d37cfd093980cf4c9c0ecaff6ae2"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_POWERDOWN" ref="gaa293d37cfd093980cf4c9c0ecaff6ae2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_POWERDOWN&#160;&#160;&#160;'D'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Power down the sensor array </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00052">52</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaf84b904de69a57e13449cd88d70e7640"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_POWERUP" ref="gaf84b904de69a57e13449cd88d70e7640" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_POWERUP&#160;&#160;&#160;'P'</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Power up the sensor array </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00054">54</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gae6edf1014992937d32f100c54d2efde8"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_CMD_REG" ref="gae6edf1014992937d32f100c54d2efde8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_CMD_REG&#160;&#160;&#160;0x41</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Register used for issuing commands </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00041">41</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gae89663deaddbf9546dbea7ef507b7596"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_I2C_ADDR" ref="gae89663deaddbf9546dbea7ef507b7596" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_I2C_ADDR&#160;&#160;&#160;0x14</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>I2C address used by the MSLSA </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00040">40</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaeb334b8818af2627dd1400663d52b192"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_UNCALIBRATED" ref="gaeb334b8818af2627dd1400663d52b192" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_UNCALIBRATED&#160;&#160;&#160;0x6A</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Uncalibrated sensor voltage </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00048">48</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga4ae89e697102fda39ba5c5dc6e1cd04d"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_WHITE_CALIB_DATA" ref="ga4ae89e697102fda39ba5c5dc6e1cd04d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_WHITE_CALIB_DATA&#160;&#160;&#160;0x5A</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>White Calibration data </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00046">46</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga8e1d100f324fefa865dbdf602dc0569a"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_WHITE_LIMIT" ref="ga8e1d100f324fefa865dbdf602dc0569a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSA_WHITE_LIMIT&#160;&#160;&#160;0x4A</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>White Reading Limit </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00044">44</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga27106d483a908de1a126fee132a52566"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAcalBlack" ref="ga27106d483a908de1a126fee132a52566" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAcalBlack</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_CALIB_BLACK)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate the black value </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00064">64</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga7f53b8297f06d90b80945e5c1e4d7ccc"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAcalWhite" ref="ga7f53b8297f06d90b80945e5c1e4d7ccc" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAcalWhite</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLDA_CMD_CALIB_WHITE)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate the white value </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00063">63</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga00ff9edf1856da054967323bf56d0610"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAsetEU" ref="ga00ff9edf1856da054967323bf56d0610" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAsetEU</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_EU)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate the black value </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-ligthsensorarray-test3_8c-example.html#a2">mindsensors-ligthsensorarray-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00065">65</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga6bd6d0e08d1209ff3ae55509c6813516"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAsetUni" ref="ga6bd6d0e08d1209ff3ae55509c6813516" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAsetUni</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_UNI)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate the black value </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-ligthsensorarray-test3_8c-example.html#a1">mindsensors-ligthsensorarray-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00067">67</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga7f235e66c11db9a4157af510ca67d0ad"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAsetUS" ref="ga7f235e66c11db9a4157af510ca67d0ad" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAsetUS</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_FREQ_US)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calibrate the black value </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-ligthsensorarray-test3_8c-example.html#a0">mindsensors-ligthsensorarray-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00066">66</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga74088d3b3aa6be1ca0e2ee5b1d6d0157"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSASleep" ref="ga74088d3b3aa6be1ca0e2ee5b1d6d0157" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSASleep</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_POWERDOWN)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Put sensor into sleep mode </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00062">62</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga25d6edcc3425de2ee9abe86186a43a98"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAwakeUp" ref="ga25d6edcc3425de2ee9abe86186a43a98" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MSLSAwakeUp</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">X&#160;)</td>
          <td>&#160;&#160;&#160;_MSLSAsendCommand(X, MSLSA_CMD_POWERUP)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Wake sensor from sleep mode </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00061">61</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga2d006a5dfeb2fe7485f2175b5832b70c"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::_lineLeader_cmd" ref="ga2d006a5dfeb2fe7485f2175b5832b70c" args="(tSensors link, ubyte cmd)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool _lineLeader_cmd </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>cmd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Send a command to the Line Leader</p>
<p>This function sends a command to the lineleader over I2C.</p>
<p>Note: this is an internal function and should not be called directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">cmd</td><td>the command to be sent </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did</dd></dl>
<p>PRELIMINARY COMMANDS FROM NXC LIB CODE</p>
<ul>
<li>A American frequency compensation</li>
<li>B for black calibration</li>
<li>D sensor power down</li>
<li>E European frequency compensation</li>
<li>I invert line color</li>
<li>P power on sensor</li>
<li>R reset line color to dark</li>
<li>S snapshot to determine line color</li>
<li>U Universal frequency compensation (default)</li>
<li>S setpoint based on snapshot (automatically set's invert if needed)</li>
<li>W White balance </li>
</ul>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00145">145</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga516ab302bdda4f6159a2ef5ffd6b2f8d"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::_lineLeader_read" ref="ga516ab302bdda4f6159a2ef5ffd6b2f8d" args="(tSensors link, ubyte regToRead, ubyte &amp;retval)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool _lineLeader_read </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>regToRead</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte &amp;&#160;</td>
          <td class="paramname"> <em>retval</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Read one ubyte from a Line Leader Register</p>
<p>This function reads one ubyte from a register in the LL sensor over I2C.</p>
<p>Note: this is an internal function and should not be called directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">regToRead</td><td>the register to read from </td></tr>
    <tr><td class="paramname">retval</td><td>the ubyte in which to store the reply </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00186">186</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gac5d314850c7f4192dd2e7c2307f96f6b"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::_lineLeader_read" ref="gac5d314850c7f4192dd2e7c2307f96f6b" args="(tSensors link, ubyte regToRead, int numBytes, tByteArray &amp;pDataMsg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool _lineLeader_read </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>regToRead</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"> <em>numBytes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;&#160;</td>
          <td class="paramname"> <em>pDataMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Read data from a Line Leader Register</p>
<p>This function reads multiple bytes from a register in the LL sensor over I2C.</p>
<p>Note: this is an internal function and should not be called directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">regToRead</td><td>the register to read from </td></tr>
    <tr><td class="paramname">numBytes</td><td>the number of bytes to read </td></tr>
    <tr><td class="paramname">pDataMsg</td><td>tByteArray to store reply </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00211">211</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga78825ff1e7aa83f16529ae1461160da5"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::_lineLeader_write" ref="ga78825ff1e7aa83f16529ae1461160da5" args="(tSensors link, ubyte regToWrite, ubyte data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool _lineLeader_write </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>regToWrite</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Write to a Line Leader Register</p>
<p>This function writes data to a register in the LL sensor over I2C.</p>
<p>Note: this is an internal function and should not be called directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">regToWrite</td><td>the register to write to </td></tr>
    <tr><td class="paramname">data</td><td>the value to write to the register </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00165">165</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaf61714035d97be3f89bcce8f8c96e1ab"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::_MSLSAsendCommand" ref="gaf61714035d97be3f89bcce8f8c96e1ab" args="(tSensors link, ubyte cmd)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool _MSLSAsendCommand </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>cmd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Send a command to the LightSensorArray</p>
<p>This function sends a command to the lightsensorarray.</p>
<p>Note: this is an internal function and should not be called directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">cmd</td><td>the command to be sent </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did</dd></dl>
<p>PRELIMINARY COMMANDS FROM NXC LIB CODE</p>
<ul>
<li>A American frequency compensation</li>
<li>B for black calibration</li>
<li>D sensor power down</li>
<li>E European frequency compensation</li>
<li>P power on sensor</li>
<li>U Universal frequency compensation (default)</li>
<li>W White balance </li>
</ul>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00091">91</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga9441ee5facb3b5a93d35fd47624b996c"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLcalBlack" ref="ga9441ee5facb3b5a93d35fd47624b996c" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLcalBlack </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set black threshold for dark area</p>
<p>This function calibrates the black threshold for each sensor in the array. Place the array over the white surface with all sensors on the black area. Execute this command to set black values internally. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00331">331</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga780835bc9c4f659670ac26a992896ac7"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLcalWhite" ref="ga780835bc9c4f659670ac26a992896ac7" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLcalWhite </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set white threshold for light area</p>
<p>This function calibrates the white threshold for each sensor in the array. Place the array over the white surface with all sensors on the white area. Execute this command to set white values internally. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00317">317</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga1db790809590cad8e206870a3e814bbc"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLinit" ref="ga1db790809590cad8e206870a3e814bbc" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLinit </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set up Line Leader sensor type</p>
<p>This function initializes the line leader to prepare for use. Issuing a command also wakes the line leader as needed. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00235">235</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gad94d0f9fc1c628d9e1a8fe598d64302b"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLinvertLineColor" ref="gad94d0f9fc1c628d9e1a8fe598d64302b" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLinvertLineColor </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Inverts detected line color</p>
<p>the function toggles from dark line on light to light line on dark and back. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00276">276</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga9a35e15add220ed326ca7520ffe65e6c"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadAverage" ref="ga9a35e15add220ed326ca7520ffe65e6c" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadAverage </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Read weighted sensor array average value</p>
<p>Read the Weighted "Average" value from the sensor. This value is calculated internally by the sensor where each of the eight sensors is either triggered or not and multiplied by a a factor to help determine if the line is left, right or on center of the line (according to the set point).<br/>
 EXPECTED VALUES: 0-80 (-1=ERROR)<br/>
 </p>
<pre> SENSOR:       0    1    2    3    4    5    6    7
 MULTIPLIER:  10   20   30   40   50   60   70   80</pre><p> FORMULA: Sum(Weighted Values)/Number sensors on line<br/>
 Ex. if sensor 0 and 1 are over a line, the average is:<br/>
 (10 + 20 + 0 + 0 + 0 + 0 + 0 + 0)/2 = 15<br/>
 in this case 30 &lt; 45 (set point) so the bot is left of center </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>average sensor value or -1 for error </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00546">546</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gafe57238ecefde4bc4992c0ff8c77a896"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadBlackThresh" ref="gafe57238ecefde4bc4992c0ff8c77a896" args="(tSensors link, tByteArray &amp;pMsg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLreadBlackThresh </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;&#160;</td>
          <td class="paramname"> <em>pMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return array of black thresholds (8 bytes)</p>
<p>Read the "Black Threshold" values from the Line Leader for each sensor.<br/>
 Each of the eight sensors has a value. Raw values less then this threshold equal black (line).<br/>
 The values are set when calibrating the black points for the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">&amp;pMsg</td><td>is 8 bytes returned. One for each sensor with Threshold. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00629">629</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga2d9d9c3cfd5dd9be7bb4f9e57408fbd7"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKd" ref="ga2d9d9c3cfd5dd9be7bb4f9e57408fbd7" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKd </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ Kd value</p>
<p>Read the "Kd" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Kd value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00497">497</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga8d6b35d47284e3ee40b68a490ad71ced"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKdFactor" ref="ga8d6b35d47284e3ee40b68a490ad71ced" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKdFactor </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ d factor value</p>
<p>Read the "Kd factor" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Kd factor value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00508">508</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gac090fcc45f5a6c53c94a31d82b61924e"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKi" ref="gac090fcc45f5a6c53c94a31d82b61924e" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKi </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ Ki value</p>
<p>Read the "Ki" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Ki value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00453">453</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga49d4b5bed7383b1ca1d3b45860dec496"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKiFactor" ref="ga49d4b5bed7383b1ca1d3b45860dec496" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKiFactor </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ i factor value</p>
<p>Read the "Ki factor" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Ki factor value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00464">464</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaee40b167cd0fcb978895964cbf1d478b"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKp" ref="gaee40b167cd0fcb978895964cbf1d478b" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKp </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ Kp value</p>
<p>Read the "Kp" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Kp value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00409">409</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga49001b6744c482e856fde7283e711e75"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadKpFactor" ref="ga49001b6744c482e856fde7283e711e75" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadKpFactor </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ p factor value</p>
<p>Read the "Kp factor" value from the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Kp factor value from the sensor </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00420">420</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga7dd78212c25b63c0349b8f4c61e11e1b"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadResult" ref="ga7dd78212c25b63c0349b8f4c61e11e1b" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadResult </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Read boolean sensor array values for all sensors</p>
<p>Read a ubyte with each bit equal to a sensor.<br/>
 1 = Line<br/>
 0 = No Line<br/>
 </p>
<pre> SENSOR:      0    1    2    3    4    5    6    7
 MULTIPLIER:  1    2    4    8    16   32   64   128</pre><p> To determine if a given sensor is over a line or not, use binary math to test each bit.<br/>
 A returned value of 3 means sensor 0 and 1 are over a line. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>RESULT value from the sensor with 8 bits of data; NO ERROR CODE </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test2_8c-example.html#a1">mindsensors-lineleader-test2.c</a>, and <a class="el" href="mindsensors-lineleader-test3_8c-example.html#a2">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00566">566</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga60491a411576c00b70909e1f295919db"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadSensorRaw" ref="ga60491a411576c00b70909e1f295919db" args="(tSensors link, tByteArray &amp;pMsg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLreadSensorRaw </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;&#160;</td>
          <td class="paramname"> <em>pMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return array of raw light values (8 bytes)</p>
<p>Read the "Raw Sensor" values from the Line Leader. Amount of light or dark each sensor sees. Typically between 0-20. 0=black, 100=white </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">&amp;pMsg</td><td>is 8 bytes returned. One for each sensor with raw value. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test2_8c-example.html#a2">mindsensors-lineleader-test2.c</a>, and <a class="el" href="mindsensors-lineleader-test3_8c-example.html#a3">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00579">579</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga9c243c81526226b5666b5d14a5fc8e59"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadSensorUncalibrated" ref="ga9c243c81526226b5666b5d14a5fc8e59" args="(tSensors link, tIntArray &amp;sensorValues)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLreadSensorUncalibrated </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#ga79eb917b5a56f0d0e7cf94886c6ac25c">tIntArray</a> &amp;&#160;</td>
          <td class="paramname"> <em>sensorValues</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return array of raw uncalibrated light values (8 ints)</p>
<p>Read the uncalibrated sensor values from the Line Leader. Each sensor returns a 16 bit value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">sensorValues</td><td>is 8 bytes returned. One for each sensor with raw value. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test4_8c-example.html#a1">mindsensors-lineleader-test4.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00591">591</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga5c46604095f77a86983b7aeaf22200dc"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadSteering" ref="ga5c46604095f77a86983b7aeaf22200dc" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLreadSteering </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Read internally calculated steering value</p>
<p>Read the "Steering" value from the sensor. This value is calculated internally and can directly be used to set turning values for the robot's motors.<br/>
 EXPECTED VALUES: -100 to 100 (-101=ERROR) </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number (range: -100 to 100) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>steering value from the sensor, -101 for error </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test3_8c-example.html#a1">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00523">523</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga1aaffb6d171becb4d2cb516077417691"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLreadWhiteThresh" ref="ga1aaffb6d171becb4d2cb516077417691" args="(tSensors link, tByteArray &amp;pMsg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLreadWhiteThresh </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> &amp;&#160;</td>
          <td class="paramname"> <em>pMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return array of white thresholds (8 bytes)</p>
<p>Read the "White Threshold" values from the Line Leader for each sensor.<br/>
 Each of the eight sensors has a value. Raw values greater then this threshold equal white (area).<br/>
 The values are set when calibrating the white points for the sensor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">&amp;pMsg</td><td>is 8 bytes returned. One for each sensor with Threshold. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00615">615</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="gaefd78fa2909cf1b98961ebf3e845e7b1"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLresetLineColor" ref="gaefd78fa2909cf1b98961ebf3e845e7b1" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLresetLineColor </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Resets line color to dark on light bkgrnd</p>
<p>the function resets to default of sensing a dark line on light background </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00288">288</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga5e59a3463a3e8b2665e6b3555da8f93d"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsetKd" ref="ga5e59a3463a3e8b2665e6b3555da8f93d" args="(tSensors link, ubyte data, ubyte factor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLsetKd </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>factor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>WRITE Kd value</p>
<p>Set the "Kd" value for the sensor's internal PID calculations.<br/>
 This value is usually set lower to stabilize default 8/32<br/>
 EXPECTED VALUES: 0 to 255<br/>
 DEFAULT VALUE: 8<br/>
 EXPECTED VALUES: 1 to 255<br/>
 DEFAULT FACTOR: 32 </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">data</td><td>- the value to set Kd </td></tr>
    <tr><td class="paramname">factor</td><td>- the Kd factor where d = Kd/Kdfactor </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test3_8c-example.html#a7">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00484">484</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga9ca02184d0ee468b2fdd7e537654d7d3"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsetKi" ref="ga9ca02184d0ee468b2fdd7e537654d7d3" args="(tSensors link, ubyte data, ubyte factor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLsetKi </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>factor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>WRITE Ki value</p>
<p>Set the "Ki" value for the sensor's internal PID calculations.<br/>
 This value is usually set close to 0 default 0/1<br/>
 EXPECTED VALUES: 0 to 255<br/>
 DEFAULT VALUE: 0<br/>
 EXPECTED FACTORS: 1 to 255<br/>
 DEFAULT FACTOR: 1 </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">data</td><td>- the value to set Ki </td></tr>
    <tr><td class="paramname">factor</td><td>- the Ki factor where i = Ki/Kifactor </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test3_8c-example.html#a6">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00440">440</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga023144b86129e6828fa94b757016065f"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsetKp" ref="ga023144b86129e6828fa94b757016065f" args="(tSensors link, ubyte data, ubyte factor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLsetKp </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>factor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>WRITE Kp value</p>
<p>Set the "Kp" value for the sensor's internal PID calculations.<br/>
 This value is usually set close to 1.0 default 25/32<br/>
 EXPECTED VALUES: 0 to 255<br/>
 DEFAULT VALUE: 25<br/>
 EXPECTED FACTORS: 1 to 255<br/>
 DEFAULT FACTOR: 32 </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">data</td><td>- the value to set Kp </td></tr>
    <tr><td class="paramname">factor</td><td>- the Kp factor where p = Kp/Kpfactor </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-lineleader-test3_8c-example.html#a5">mindsensors-lineleader-test3.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00396">396</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga48b8ab2daaa7afede45d1501933824f0"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsetPoint" ref="ga48b8ab2daaa7afede45d1501933824f0" args="(tSensors link, ubyte data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLsetPoint </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte&#160;</td>
          <td class="paramname"> <em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>WRITE mid-point or center of line value</p>
<p>The set point is used by internally (or externally) by the sensor to determine the middle of the sensor over a line. This value is compared to the average value to help the robot know if it is left or right of center. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
    <tr><td class="paramname">data</td><td>- the value to set the set point to </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00346">346</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga8b142f1b378d3cecbdd5e4b5a2a7d788"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsetPoint" ref="ga8b142f1b378d3cecbdd5e4b5a2a7d788" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int LLsetPoint </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>READ SetPoint value</p>
<p>This function reads the setpoint value from the sensor </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>value of setpoint </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00356">356</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga2bbf71694ef338dab472618a6442c429"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLsleep" ref="ga2bbf71694ef338dab472618a6442c429" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLsleep </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sleep to conserve power when not in use</p>
<p>This function puts the line leader to sleep conserve power. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00264">264</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga71dbb04b90ec6f5c90c34b5db4c638d5"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLtakeSnapshot" ref="ga71dbb04b90ec6f5c90c34b5db4c638d5" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLtakeSnapshot </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>takes a snapshot to determine line color</p>
<p>This function takes a snapshot of the line under the sensor and tracks that position in subsequent tracking operations. Also this function will set inversion if it sees white line on dark background </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00303">303</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga3b5fbe1abe3eb0889c9fb30ff7d7c01b"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LLwakeUp" ref="ga3b5fbe1abe3eb0889c9fb30ff7d7c01b" args="(tSensors link)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool LLwakeUp </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>&#160;)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Wake sensor from sleep mode</p>
<p>This function wakes the line leader to prepare for use. Issuing a command also wakes the line leader as needed. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the sensor port number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00252">252</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga18b78973f36c39c3d98200941c9bbe51"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAreadRawSensors" ref="ga18b78973f36c39c3d98200941c9bbe51" args="(tSensors link, int *values)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MSLSAreadRawSensors </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"> <em>values</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the uncalibrated values from the sensors </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the Mindsensors LightSensorArray port number </td></tr>
    <tr><td class="paramname">values</td><td>pointer to integer array to hold the uncalibrated sensor values </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00132">132</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga23eeee592371dc2285d86e86e98dfb91"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSAreadSensors" ref="ga23eeee592371dc2285d86e86e98dfb91" args="(tSensors link, ubyte *values)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MSLSAreadSensors </td>
          <td>(</td>
          <td class="paramtype">tSensors&#160;</td>
          <td class="paramname"> <em>link</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ubyte *&#160;</td>
          <td class="paramname"> <em>values</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the calibrated values from the sensors </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">link</td><td>the Mindsensors LightSensorArray port number </td></tr>
    <tr><td class="paramname">values</td><td>pointer to unsigned byte array to hold the sensor values </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if no error occured, false if it did </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="mindsensors-ligthsensorarray-test1_8c-example.html#a1">mindsensors-ligthsensorarray-test1.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00107">107</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<hr/><h2>Variable Documentation</h2>
<a class="anchor" id="ga2be29d118be70da80c5b5b0ddeaad572"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_I2CReply" ref="ga2be29d118be70da80c5b5b0ddeaad572" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> <a class="el" href="group__msll.html#ga2be29d118be70da80c5b5b0ddeaad572">LL_I2CReply</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Array to hold I2C reply data </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00073">73</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga8dd01df4fc54bdb09a4d0324e0a52b14"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::LL_I2CRequest" ref="ga8dd01df4fc54bdb09a4d0324e0a52b14" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> <a class="el" href="group__msll.html#ga8dd01df4fc54bdb09a4d0324e0a52b14">LL_I2CRequest</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Array to hold I2C command data </p>

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00072">72</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga109536bf6e085ae6e7980771e3054526"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_I2CReply" ref="ga109536bf6e085ae6e7980771e3054526" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> <a class="el" href="group__msll.html#ga109536bf6e085ae6e7980771e3054526">MSLSA_I2CReply</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Array to hold I2C reply data </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00059">59</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga8867a116b6793a996bbc787d1c6003fd"></a><!-- doxytag: member="mindsensors&#45;lightsensorarray.h::MSLSA_I2CRequest" ref="ga8867a116b6793a996bbc787d1c6003fd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__common.html#gaa172ef131853460e5b9f5c6db81d30f4">tByteArray</a> <a class="el" href="group__msll.html#ga8867a116b6793a996bbc787d1c6003fd">MSLSA_I2CRequest</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Array to hold I2C command data </p>

<p>Definition at line <a class="el" href="mindsensors-lightsensorarray_8h_source.html#l00058">58</a> of file <a class="el" href="mindsensors-lightsensorarray_8h_source.html">mindsensors-lightsensorarray.h</a>.</p>

</div>
</div>
<a class="anchor" id="ga212a936c0d0cc14338cd1152384c4885"></a><!-- doxytag: member="mindsensors&#45;lineleader.h::oneByte" ref="ga212a936c0d0cc14338cd1152384c4885" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ubyte <a class="el" href="group__msll.html#ga212a936c0d0cc14338cd1152384c4885">oneByte</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="mindsensors-lineleader_8h_source.html#l00074">74</a> of file <a class="el" href="mindsensors-lineleader_8h_source.html">mindsensors-lineleader.h</a>.</p>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Mar 13 2013 19:56:44 for ROBOTC Drivers by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.2 </small></address>
</body>
</html>
